Tips&Tricks I trucchi del mestiere

 

Controllare i processi di un PC remoto


Un tip che consente di ottenere la lista dettagliata dei processi attivi su un PC remoto. Il nome del computer Φ specificato dalla costante "COMPUTER"; con il punto si specifica il PC locale. L'esempio utilizza WMI, per cui Φ necessario che sia installato sia sul PC locale che su quello remoto.
Tip fornito dal sig. R.Cirillo

Procedure TForm1.Button1Click(Sender: TObject);
Const
        QUERY    = 'Select * From Win32_Process';
        COMPUTER = 'SERVER-AT12K';
Var
        Services  : SWbemServices;
        ObjectSet : ISWbemObjectSet;
        Enum      : IEnumVariant;
        tempObj   : OleVariant;
        SObject   : ISWbemObject;
        Value     : Cardinal;
Begin
        Services := Locator.ConnectServer(COMPUTER, 'root\cimv2', '', '', '',
                                          '', 0, nil);
        ObjectSet := Services.ExecQuery(QUERY, 'WQL',
                                        wbemFlagReturnImmediately, nil);
        Enum := (ObjectSet._NewEnum) As IEnumVariant;
        While (Enum.Next(1, TempObj, Value) = S_OK) Do
        Begin
                SObject := IUnknown(TempObj) As SWBemObject;
                Memo1.Lines.Add(SObject.GetObjectText_(0))
        End;
End;

Visual Basic .NET - Menu facili con XML


Un tip che permette di costruire la barra dei menu di una Form leggendo le informazioni da un file XML.
Il tip si compone essenzialmente di una classe e di una interfaccia. La classe MenuBuilder legge il file XML e crea la struttura del menu, mentre l'interfaccia IActionMenu prevede un metodo Performed che Φ l'handler dell'evento click di una voce di menu.
Il documento XML prevede un elemento radice MAINMENU che pu≥ avere uno o pi∙ figli MENUITEM che possono a loro volta avere figli MENUITEM. Per ogni MENUITEM posso specificare l'etichetta (con LABEL) e la classe che deve gestire l'evento clic (con ACTION).
L'esempio che potrete trovare nel Cd-Rom allegato si compone di tre classi (OpenAction, NewAction, ExitAction) che implementano l'interfaccia e si limitano a visualizzare una MessageBox (Φ incluso un file XML con la definizione di un menu). La classe MenuBuilder comunque pu≥ essere personalizzata (e lo stesso vale per lo schema del file XML) per supportare altre funzionalitα, come lo stato di abilitazione e la gestione di altri eventi.
Trovate il progetto completo nella directory /tips del Cd-Rom allegato o digitando l'url: www.itportal.it/ioprog71/tips.
Tip fornito dal sig. Boscolo Alberto Gnolo


File troppo "ingombranti"


Il tip mostra come eseguire lo Split di un file, cioΦ la divisione dei dati in esso contenuti in pi∙ file di dimensioni nettamente inferiori, e l'UnSplit cioΦ il processo inverso attraverso il quale si ricrea il file originale.
Pu≥ essere utile splittare un file quando, ad esempio, questo occupi troppo spazio per poter essere copiato su un FloppyDisk. Lo si potrebbe splittare in tanti file di 1457664 bytes (1 Floppy 1.44 Mb) copiandoli ognuno su altrettanti dischetti, trasportarli su un qualsiasi altro sistema ed, eseguendo l'UnSplit, recuperare il file originale.
Trovate il progetto completo nella directory /tips del Cd-Rom allegato o digitando l'url: www.itportal.it/ioprog71/tips.
Tip fornito dal Sig. S.Scigliuzzi